package com.iuie.ns.system.service.report;

import java.util.List;
import java.util.Map;

import com.iuie.ns.frame.web.dataset.vo.Page;
import com.iuie.ns.system.vo.report.ReportParamsVO;

/**
 * 报表参数service
 * @author liujie
 * @date 2018年5月20日下午9:17:47
 */
public interface IReportParamsService {

	/**
	 * 根据报表Id删除报表参数
	 * @param reportId
	 * @return
	 * @date 2018年5月20日下午9:17:56
	 */
	Integer deleteByReportId(String reportId);

	/**
	 * 根据reportId分页查询报表参数
	 * @param page
	 * @param condition
	 * @return
	 * @date 2018年5月20日下午9:23:18
	 */
	List<ReportParamsVO> findByPage(Page page, ReportParamsVO condition);

	/**
	 * 根据reportId和paramKey删除参数
	 * @param reportId
	 * @param paramKey
	 * @return
	 * @date 2018年5月21日上午8:44:13
	 */
	Integer deleteParamByReportIdAndParamKey(String reportId, String paramKey);

	/**
	 * 新增单条报表参数
	 * @param item
	 * @param oldParamKey 
	 * @date 2018年5月21日上午9:58:56
	 */
	void addOne(ReportParamsVO item, String oldParamKey);

	/**
	 * 根据reportId和paramKey查询单条记录
	 * @param reportId
	 * @param paramKey
	 * @return
	 * @date 2018年5月21日上午10:35:24
	 */
	ReportParamsVO findById(String reportId, String paramKey);
	
	/**
	 * 查询参数，根据key,value形式获取Map
	 * @param reportId
	 * @return
	 * @date 2018年5月22日上午8:37:12
	 */
	Map<String, String> findMapOfParams(String reportId);

}
